﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.Objects;

namespace DrivingCRM.Model
{
    /// <summary>
    /// Classe statique permettant une instanciation unique
    /// </summary>
    public class DatabaseAccess
    {
        /// <summary>
        /// Modèle de données de la base DrivingCRM
        /// </summary>
        public static Model_DrivingCRMContainer localDatabase = new Model_DrivingCRMContainer();

        /// <summary>
        /// Méthode permettant d'annuler les changements en attente du modèle couramment instancié
        /// </summary>
        //public static void CancelModelChanges()
        //{
        //    /// variable contenant les états des objets à réstituer
        //    EntityState changedStates = EntityState.Added | EntityState.Deleted | EntityState.Modified;

        //    /// parcourt de la liste des objets en répondant au critères ci-dessus (soit en attente d'ajout, de suppression ou de modification)
        //    foreach (ObjectStateEntry entry in DatabaseAccess.localDatabase.ObjectStateManager.GetObjectStateEntries(changedStates))
        //    {
        //        /// annulation des changements en attente
        //        DatabaseAccess.localDatabase.Refresh(RefreshMode.StoreWins, entry.Entity);
        //    }
        //}
    }
}